package ar.edu.caece.compiler.grammar.nonterminals;

import ar.edu.caece.compiler.grammar.NonTerminalSymbol;
import ar.edu.caece.compiler.grammar.terminals.AndToken;
import ar.edu.caece.compiler.grammar.terminals.ComaToken;
import ar.edu.caece.compiler.grammar.terminals.FinParentesisToken;
import ar.edu.caece.compiler.grammar.terminals.InicioParentesisToken;

public class CONDICION3 extends NonTerminalSymbol implements CONDICION{
	
	private AndToken andToken;
	private InicioParentesisToken inicioParentesisToken;
	private CONDICION condicion1;
	private ComaToken comaToken;
	private CONDICION condicion2;
	private FinParentesisToken finParentesisToken;

	public CONDICION3(AndToken andToken,
			InicioParentesisToken inicioParentesisToken, CONDICION condicion1,
			ComaToken comaToken, CONDICION condicion2,
			FinParentesisToken finParentesisToken) {
		super();
		this.andToken = andToken;
		this.inicioParentesisToken = inicioParentesisToken;
		this.condicion1 = condicion1;
		this.comaToken = comaToken;
		this.condicion2 = condicion2;
		this.finParentesisToken = finParentesisToken;
	}


	@Override
	public String getRepresentation() {
		// TODO Auto-generated method stub
		return "{"+this.getClass().getSimpleName()+" -> "+andToken.getRepresentation()+" "+inicioParentesisToken.getRepresentation()+" "+condicion1.getRepresentation()+" "+comaToken.getRepresentation()+" "+condicion2.getRepresentation()+" "+finParentesisToken.getRepresentation()+"}";
	}

	public AndToken getAndToken() {
		return andToken;
	}

	public InicioParentesisToken getInicioParentesisToken() {
		return inicioParentesisToken;
	}

	public CONDICION getCondicion1() {
		return condicion1;
	}

	public ComaToken getComaToken() {
		return comaToken;
	}

	public CONDICION getCondicion2() {
		return condicion2;
	}

	public FinParentesisToken getFinParentesisToken() {
		return finParentesisToken;
	}

}
